"""
dir() 是一个内置函数，主要用于列出对象的属性和方法，或者列出当前作用域中定义的名称，并以一个字符串列表的形式返回。
当你将一个模块作为 dir() 的参数时，它会返回该模块中定义的名称列表，包括函数、变量、类等。
    当你将一个对象作为 dir() 的参数时，它会返回该对象的属性和方法列表。
    当你不传递任何参数调用 dir() 时，它会列出当前作用域中定义的名称，包括变量、函数、类等
"""

# 导入自定义模块 calc
import calc
# 列出 calc 模块中的所有属性和方法
print(dir(calc))

print("-"*100)

# 列出当前作用域中的所有名称
print(dir())

print("-"*100)

# 查看对象的属性和方法列表
class Student:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def study(self):
        print(f"{self.name}正在学习")
student = Student("小明", 20)
print(dir(student))
